草庐IT

simplexml - PHP simplexml 实体

全部标签

php - 警告:DOMDocument::loadXML() [function.DOMDocument-loadXML]:实体 'laquo' 未在实体中定义

我使用xml、xsl截取服务器的响应并提取所需的片段,以根据客户端请求从服务器响应中提取html片段。例如,假设$content在我们处理它之前有服务器响应。$dom=newdomDocument();$dom->loadXML($content);$xslProgram=xslProgram;$domXsl=newdomDocument();$domXsl->loadXML($xslProgram);$xsl=newXSLTProcessor();$xsl->importStylesheet($domXsl);$content=$xsl->transformToXml($dom);看

php - 无法使用 PHP Simplexml 添加带有命名空间前缀的属性

尝试编辑使用ExcelsXML命名空间的XML文档:我需要得到这个结果(需要ss:前缀befireType):value我查看了问题UnableaddnamespacewithPHPsSimpleXML但这种方法在这里没有帮助。换句话说,按照那里的概述运行它$data=$cells[$i]->addChild('Data','value');$data->addAttribute("ss:Type","String","urn:schemas-microsoft-com:office:spreadsheet");给我value没有ss:前缀。如果我删除urn:前缀,那么我会得到这个va

用于 SimpleXML 对象的 PHP array_walk_recursive()?

我想对SimpleXML对象中的每个节点应用一个函数。ABCDEFGHIJKL//函数reverseText($str){};CBAFEDIHGLKJ我如何将reverseText()应用于每个节点以获取第二个XML片段? 最佳答案 这里是StandardPHPLibrary可以前来救援。一个选择是使用(鲜为人知的)SimpleXMLIterator.它是几个RecursiveIterator之一在PHP和RecursiveIteratorIterator中可用来自SPL的可用于循环并更改所有元素的文本。$source='ABCDE

php - 比较 SimpleXml 对象

我正在尝试比较两个SimpleXML对象。一个是从数据库中获取的,另一个是从XMLAPI中获取的,但无论XML实际上是否相同,结果始终为假。我做错了什么?$objDbXml=simplexml_load_string($objReisen->xml);//XMLfromDB$objApiXml=simplexml_load_string(getXMlFromApi());//XMLfromApivar_dump($objDbXml->Reise->Z_LEISTUNGEN==$objApiXml->Reise->Z_LEISTUNGEN);//Resultisalwaysfalseva

php - 如何将数据库表转换为 Doctrine 实体

我正在使用doctrine和codeigniter,并且我有一个现有的数据库。this据推测,该工具可以从数据库生成模型。我试试:phpdoctrine.phporm:convert-mapping--from-database但是我得到一个运行时异常(没有足够的参数)有什么想法吗? 最佳答案 这样试试,对于XML输出phpdoctrineorm:convert-mapping--from-database--namespace='Entities\'xmlmapping/xml对于YAML输出phpdoctrineorm:conv

php - 如何将实体管理器传递给 Symfony 中的嵌入表单?

我可以从Controller执行$this->createForm(newEntityType(),$entity,array('em'=>$em)),但我如何将它传递给嵌套实体类型()?我想我不能只是从EntityType->buildForm()内部传递它:publicfunctionbuildForm(FormBuilderInterface$builder,array$options){$entityManager=$options['em'];$builder->add('entities','collection',array('type'=>newNestedEntity

php - 如何获取学说实体属性的类型

实际上我有一个学说实体,我需要动态填充它的属性。我希望能够做这样的事情:$entity=newEntity();$reflect=newReflectionClass($entity);//$fieldsisanarraywhihchcontaintheentitynameasthearraykeyandthevalueasthearrayvalueforeach($fieldsas$key=>$val){if(!reflect->hasProperty($key)){var_dump('theentitydoesnothaveasuchproperty');continue;}if(

php - 使用 simplexml_load_file() 加载压缩的 XML 文件

我正在尝试使用simplexml_load_file()PHP函数加载一个gzip压缩的XML文件,但我不知道如何解码它以便我可以使用其中的数据。 最佳答案 PHP有supportforzlibcompression内置,只需在文件的路径前加上gzip数据compress.zlib://就可以了:$xml=simplexml_load_file("compress.zlib://test.xml");像魅力一样工作。 关于php-使用simplexml_load_file()加载压缩的X

php - 如何使用 simplexml 处理无效的 unicode

Simplexml失败并显示以下错误消息:simplexml_load_file():fooo.xml:299108:parsererror:Char0xFFFEoutofallowedrange据我了解,投诉是关于无效的unicode字符。第299108行没有“FFFE”,但包含“EFBFBE”。在simplexml中有没有办法处理这种类型的错误? 最佳答案 我在处理传入的用户数据时经常遇到这个问题,我研究了很多方法来解决它。有一些方法可以将传入数据正确编码为UTF-8,而无需经常导致这些问题的高阶(或其他)unicode值。但是

php - 将 unicode 转换为 html 实体十六进制

如何将Unicode字符串转换为HTML实体?(HEX不是十进制)例如,将Français转换为Français。 最佳答案 对于relatedquestion中缺少的十六进制编码:$output=preg_replace_callback('/[\x{80}-\x{10FFFF}]/u',function($match){list($utf8)=$match;$binary=mb_convert_encoding($utf8,'UTF-32BE','UTF-8');$entity=vsprintf('&#x%X;',unpack(